1. Field of the Invention
The present invention relates to a load distribution system, a session management system, a client system, a computer-readable recording medium storing a load distribution program, a computer-readable recording medium storing a session management program, and a computer-readable recording medium storing a local proxy server program, and more particularly to a load distribution system, a session management system, a client system, a computer-readable recording medium storing a load distribution program, a computer-readable recording medium storing a session management program, and a computer-readable recording medium storing a local proxy server program, which enable a WWW system to be used similarly to a client-server system.
2. Description of the Related Art
With the development of the Internet, "WWW(World Wide Web) browsers", which are client applications for accessing Hypertext Transfer Protocol (HTTP) files on WWW servers, have become common on many computers. Further, his comparatively recent WWW system is particularly excellent at its main function of fetching a HTML (Hyper Text Markup Language) document and displaying the content of the same. As seen in the case of an intra-company network (intranet), internet communication technology is increasingly being utilized in internal enterprise information systems for sharing information and supporting the business and services. Moreover, an attempt has been made to implement functions equivalent to those of a conventional client-server system using WWW system technology. However, in conventional implementations, the WWW system has fewer functions than the client-server system in many respects. For this reason, the following measures are taken to solve the problems that relate to specific uses of the WWW system.
A first problem concerns the concentration of information. The Internet utilizes the TCP/IP (Transmission Control Protocol/Internet Protocol) as the low level protocols that are used to implement HTTP (Hyper Text Transfer Protocol). The TCP/IP uses an IP address to locate and establish a session with another machine on the network. In such an environment, a load distribution device such as a router or a switching device, which is capable of sending TCP/IP packets containing an identical IP address to a plurality of WWW server computers, is used for carrying out load distribution so as to avoid load concentration onto a single WWW server.
In order to avoid load concentration, it is also possible to utilize a function of a mapping system of "DNS (Domain Name System) names" and IP addresses commonly utilized on the Internet for identifying individual computers on the network. For example, there is a method (hereinafter referred to as "DNS load distribution") of using distributed IP addresses, in which a plurality of IP addresses are assigned to one DNS name, and mapping is carried out on a round robin basis whenever a mapping request is delivered to DNS for mapping a DNS name to an IP address.
A second problem concerns continuity of communication. Much of the data transfer on the existing WWW system is implemented by a protocol referred to as "HTTP". According to this protocol, one communication cycle between a WWW browser and a WWW server is completed by one request from the WWW browser and one response from the WWW server. That is, a continuous connection is not maintained. Therefore, no communications capability with session management function is provided between a typical WWW browser and a typical WWW server. For this reason, there exists a WWW server or a service program that is executed on the WWW server which provides a session management function by itself. These are products provided as WWW server software or as middleware which provide a session management function as a feature inherent thereto. These functions are each implemented by passing session information determined by a server between the server and a WWW browser. Session information is passed using several methods, e.g. by using a Cookie, by embedding the information in the response HTML document as data which is not displayed by the WWW browser, or by adding the information as part of the address information contained in the request which is delivered subsequently. The "Cookie" mentioned above is an information file created by a WWW server and sent to a client to be stored in the client.
As described above, when a problem is encountered, a new technique is introduced to overcome the problem.
However, the conventional WWW system has not experienced radical improvement of the functions available in the system. Thus, there still remain the following problems:
First, in the conventional method of coping with the first problem described above, load can be concentrated on the load distribution device itself. In addition, the load distribution device is not trouble-free to a desired extent. Further, in the method which uses a load distribution device, it is not certain which WWW server will be selected for each communication using the TCP/IP (that is, there is no one-to-one relationship between sequential communications). This makes it difficult for a client to carry out a predetermined range of communication with the same WWW server, which is different from the case of session management using user data on HTTP which uses the TCP/IP protocol as lower level protocols.
Moreover, in the DNS load distribution, in general, once a user of an IP address (e.g. a computer on which a WWW browser is operating) has mapped a DNS name to an IP address, the mapping result is stored on the user's end for an extended time period, which makes it difficult to perform timely load distribution.
In the conventional method of coping with the second problem described above, the inconvenience concerning security (as to the method using Cookie) and restriction on the document preparation rules (as to the method of embedding information in an HTML document) cannot be overcome. Further, all of the above methods require extension of WWW server functions or WWW browser functions. For this function extension, however, each individual product has to be dealt with, which requires an extensive effort.
As described above, in order to provide the same functions as the existing client-server system does, the WWW system requires many more capabilities than the system currently provides. This problem remains unsolved.